interface Option {
  [key: string | number]: string | number
}

interface Options {
  [key: string]: Option
}

const options: Options = {
  // 句子类型
  sentence_type: {
    1: '笑话段子',
    2: '朋友圈文案',
    3: '早安心语',
    4: '晚安心语',
    5: '毒鸡汤',
    6: '土味情话',
    7: '绕口令',
    8: '神回复',
    9: '经典台词'
  },
  // 用户来源
  user_source: { 'mp-weixin': '微信小程序', 'mp-qq': 'QQ小程序' },
  // 对联类型
  couplet_type: {
    1: '春联',
    2: '乔迁',
    3: '开业',
    4: '结婚',
    5: '生子',
    6: '经典',
    7: '名胜',
    8: '人物'
  },
  // 反馈类型
  error_type: { 1: '句子', 2: '对联' },
  // 反馈状态
  error_status: { 1: '待处理', 2: '已处理' },
  // 文章状态
  article_status: {
    1: '未发布',
    2: '已发布',
    3: '草稿'
  },
  // 文章类型
  article_type: {
    1: '文字',
    2: '图文',
    3: '图片'
  }
}

export default function useOptions() {
  return {
    getVal(name: string, k: string | number): string | number {
      const op = options[name]
      if (!op) return ''
      return op[k]
    },

    getOption(name: string): Option | null {
      const op = options[name]
      if (!op) return null
      return op
    }
  }
}
